package com.cmii.sjw.department.control.jsc.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class PracticeBaseInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 属地机构ID
     */
    private Integer parentId;

    /**
     * 基地名称
     */
    private String name;

    /**
     * 基地代码
     */
    private String code;

    /**
     * 基地封面
     */
    private String cover;

    /**
     * 基地级别
     */
    private Integer level;

    /**
     * 基地类别（0:系统入驻，1:闲散基地）
     */
    private String type;

    /**
     * 办学规模
     */
    private Integer scale;

    /**
     * 省份编码
     */
    private String province;

    /**
     * 市级编码
     */
    private String city;

    /**
     * 区级编码
     */
    private String area;

    /**
     * 经纬度:逗号隔开的经纬度
     */
    private String point;

    /**
     * 经度
     */
    private String longitude;

    /**
     * 纬度
     */
    private String latitude;

    /**
     * 地区信息
     */
    private String district;

    /**
     * 详细地址
     */
    private String address;

    /**
     * 法人代表
     */
    private String legalPerson;

    /**
     * 联系人
     */
    private String contacts;

    /**
     * 联系电话
     */
    private String phone;

    /**
     * 联系邮箱
     */
    private String email;

    /**
     * 基地简介支持文本、图片、视频展示，历史沿革，特色课程(课程详细里面增加视频上传功能)
     */
    private String briefIntroduction;

    /**
     * 最大接待人数
     */
    private Integer maxReceptionNum;

    /**
     * 占地面积
     */
    private String coverArea;

    /**
     * 建筑面积【预留)
     */
    private String floorArea;

    /**
     * 室内场馆数量
     */
    private String venueIndoorNum;

    /**
     * 室外活动场馆
     */
    private String venueOutdoorNum;

    /**
     * 宿舍数量
     */
    private Integer dormNum;

    /**
     * 教师数量
     */
    private Integer teacherNum;

    /**
     * 最大就餐人数
     */
    private Integer maxMealsNum;

    /**
     * 基地开放时间
     */
    private String openingTime;

    /**
     * 图片
     */
    private String images;

    /**
     * 视频
     */
    private String videos;

    /**
     * 是否启用
     */
    private Boolean isEnabled;

    /**
     * 浏览数量
     */
    private Integer totalViews;

    /**
     * 接待人数
     */
    private Integer totalReceptionists;

    /**
     * 评价数量
     */
    private Integer totalEvaluations;

    /**
     * 课程数量
     */
    private Integer totalCourses;

    /**
     * 活动次数
     */
    private Integer totalActivities;

    /**
     * 是否置顶
     */
    private Boolean isTopped;

    /**
     * 禁用时间
     */
    private String disabledAt;

    /**
     * 禁用操作人
     */
    private String disabledBy;

    /**
     * 禁用原因
     */
    private String disabledContent;

    /**
     * 首次审批通过日期
     */
    private String firstAuditAt;

    /**
     * 审核状态
     */
    private Boolean auditStatus;

    /**
     * 审核时间
     */
    private String auditAt;

    /**
     * 审核操作人
     */
    private String auditBy;

    /**
     * 审核意见
     */
    private String auditContent;

    /**
     * 降级状态
     */
    private Boolean demoteStatus;

    /**
     * 降级时间
     */
    private String demoteAt;

    /**
     * 降级操作人
     */
    private String demoteBy;

    /**
     * 降级原因
     */
    private String demoteContent;

    /**
     * 确认降级时间（区县）
     */
    private String demoteConfirmAt;

    /**
     * 确认降级操作人（区县）
     */
    private String demoteConfirmBy;

    /**
     * 确认降级原因（区县）
     */
    private String demoteConfirmContent;

    /**
     * 是否对外呈现评价（门户网站）
     */
    private Boolean commentStatus;

    /**
     * 创建时间
     */
    private String createAt;

    /**
     * 创建者Name
     */
    private String createBy;

    /**
     * 创建者id
     */
    private Integer creatorId;

    /**
     * 创建者身份
     */
    private String creatorIdentity;

    /**
     * 修改时间
     */
    private String updateAt;

    /**
     * 修改者Name
     */
    private String updateBy;

    /**
     * 修改者id
     */
    private Integer updatorId;

    /**
     * 修改者身份
     */
    private String updatorIdentity;
}